package config;

import ap.BDDACLWrapper;
import common.Network;

import java.util.HashSet;

public class genConfig2 {
    public static void main(String[] args) {
        Network nc = new Network();
        nc.addTopology("S", "A", "A", "S");
//        nc.addTopology("S", "A2", "A", "S2");
        nc.addTopology("A", "B", "B", "A");
        nc.addTopology("A", "W", "W", "A");
        nc.addTopology("B", "C", "C", "B");
        nc.addTopology("B", "W", "W", "B");
//        nc.addTopology("B", "W2", "W", "B2");
        nc.addTopology("C", "W", "W", "C");
        nc.addTopology("C", "D", "D", "C");
        nc.addTopology("D", "W", "W", "D");


        nc.addFib("S", "0.0.0.0", 0, "ALL A");
        nc.addFib("A", "0.0.0.0", 0, "ALL B W");
        nc.addFib("B", "0.0.0.0", 0, "ALL C");
        nc.addFib("C", "0.0.0.0", 0, "ALL D");
        nc.addFib("W", "0.0.0.0", 0, "ALL C D");

        HashSet<String> start, end, waypoint;
        start = new HashSet<>(); start.add("S");
        end = new HashSet<>(); end.add("D");
        waypoint = new HashSet<>(); waypoint.add("W");
        HashSet<Integer> length = new HashSet<>();

        nc.addReq(">=1 match S.*W.*D", start, end, waypoint, length);
        nc.generateConfig("code/common/config/2");

    }
}
